// File: src/utils/DateTimeUtils.cpp
#include "DateTimeUtils.h"

std::time_t DateTimeUtils::parseDateTime(const std::string& datetimeStr) {
    std::tm tm = {};
    std::istringstream ss(datetimeStr);
    
    // 尝试解析 YYYY-MM-DD HH:MM 格式
    ss >> std::get_time(&tm, "%Y-%m-%d %H:%M");
    if (ss.fail()) {
        // 尝试解析 YYYY-MM-DD 格式
        ss.clear();
        ss.str(datetimeStr);
        ss >> std::get_time(&tm, "%Y-%m-%d");
    }
    
    if (ss.fail()) {
        return -1;
    }
    
    return std::mktime(&tm);
}
